package java_dataLearn;
import java.util.*;
public class Heap {
    public static void main(String[] args) {

    }
}

class Solution {
    public int[] smallestK(int[] arr, int k) {
        int[] res=new int[k];
        if ( arr==null || arr.length==0 ){
            return res;
        }
        PriorityQueue<Integer> que=new PriorityQueue<>(arr.length);
        for ( int i=0;i<arr.length;i++ ){
            que.offer(arr[i]);
        }
        for ( int i=0;i<k;i++ ){
            res[i]=que.poll();
        }
        return res;
    }
}

//class Solution{
//    public int[] maxK(int[] arr, int k) {
//        int[] ret = new int[k];
//        if(arr == null || k == 0) {
//            return ret;
//        }
//
//        Queue<Integer> minHeap = new PriorityQueue<>(k);
//
////1、遍历数组的前K个 放到堆当中
//
////2、遍历剩下的K-1个，每次和堆顶元素进行比较
//// 堆顶元素 小的时候，就出堆。
//
//
//    }
//}
